package xin.marcher.module.common.enums.lifecycle;

import java.util.HashMap;
import java.util.Map;

/**
 * 可采可不可售枚举
 */
public enum ItemExpriEnum {
    /**
     * 不可售
     */
    AVAILABLE_STATUS_NO(0, "不可售"),
    /**
     * 不可补
     */
    COMPENSATION_STATUS_NO(0, "不可补"),
    /**
     * 不可采
     */
    RECOVERABLE_STATUS_NO(0, "不可采"),
    /**
     * 可售
     */
    AVAILABLE_STATUS_YES(1, "可售"),
    /**
     * 可补
     */
    COMPENSATION_STATUS_YES(1, "可补"),
    /**
     * 可采
     */
    RECOVERABLE_STATUS_YES(1, "可采");

    private Integer code;

    private String value;

    ItemExpriEnum(Integer code, String value) {
        this.code = code;
        this.value = value;
    }

    public Integer getCode() {
        return code;
    }

    public String getValue() {
        return value;
    }

    public static Map<Integer, String> toMap() {
        Map<Integer, String> map = new HashMap<>(16);
        for (ItemExpriEnum element : ItemExpriEnum.values()) {
            map.put(element.getCode(), element.getValue());
        }
        return map;
    }

    public static ItemExpriEnum getByCode(Integer code) {
        if (code == null) {
            return null;
        }
        for (ItemExpriEnum element : ItemExpriEnum.values()) {
            if (code.equals(element.getCode())) {
                return element;
            }
        }
        return null;
    }

}
